﻿package net.imonair.msn.events {	
	import flash.events.Event;
	import net.imonair.core.contacts.IIMContact;
	import net.imonair.core.events.IMContactEvent;
	public class MSNContactEvent extends IMContactEvent {
		public static const CHANGE				:String = IMContactEvent.CHANGE;
		public static const STATUS_CHANGE		:String = IMContactEvent.STATUS_CHANGE;
		public static const GROUP_CHANGE		:String = "msnContactGroupChange";
		public static const NAME_CHANGE			:String = IMContactEvent.NAME_CHANGE;
		public static const BLOCKED				:String = "msnContactBlocked";
		public static const ALLOWED				:String = "msnContactAllowed";
		public static const UNBLOCKED			:String = "msnContactUnBlocked";
		public static const DISALLOWED			:String = "msnContactDisAllowed";
		public static const ONLINE				:String = "msnContactOnline";
		public static const OFFLINE				:String = "msnContactOffline";
		public static const ADDED_BY_CONTACT	:String = "msnAddedByContact";
		public static const REMOVED_BY_CONTACT	:String = "msnRemovedByContact";
/*		public static const GROUP_ADDED			:String = "msnGroupAdded";
		public static const GROUP_RENAMED		:String = "msnGroupRenamed";
		public static const GROUP_REMOVED		:String = "msnGroupRemoved";
		public static const GROUPS_READY		:String = "msnGroupsReady";
*/		public function MSNContactEvent(type:String, relatedContact:IIMContact) {
			super(type, relatedContact);
		}
		override public function clone():Event {
			return new MSNContactEvent(this.type, this.target as IIMContact);
		}
		override public function toString():String {
			return formatToString("MSNContactEvent", "type", "bubbles", "cancelable", "status", "extendedstatus", "eventPhase");
		}
	}
}